package com.scs.application.modules.dept.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.scs.application.core.entity.DataEntity;
import com.scs.application.modules.upgrade.db.annotation.EntityClassAnnotation;
import com.scs.application.modules.upgrade.db.annotation.EntityFieldAnnotation;
import com.scs.application.modules.upgrade.db.enums.EntityFieldType;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;
/**
 * <p>
 *
 * </p>
 *
 */
@Data
@Accessors(chain = true)
@EntityClassAnnotation(remark = "消耗合单明细表")
@TableName("dept_use_merge_dtl")
public class UseMergeDtl extends DataEntity {

    @EntityFieldAnnotation(
            text = "外键",
            length = "",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private String useMergeId;

    @EntityFieldAnnotation(
            text = "参考ID",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = "来源单据ID"
    )
    private String refId;

    @EntityFieldAnnotation(
            text = "参考明细ID",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = "来源明细单据ID"
    )
    private String refItemId;

    @EntityFieldAnnotation(
            text = "参考单号",
            length = "20",
            not_null = false,
            default_value = "",
            comment = "来源单据标识"
    )
    private String refKey;

    @EntityFieldAnnotation(
            text = "关联表",
            length = "20",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String refTable;

    @EntityFieldAnnotation(
            text = "库存ID",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = "锁库库存ID"
    )
    private String stockId;

    @EntityFieldAnnotation(
            text = "物料ID",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String matrId;

    @EntityFieldAnnotation(
            text = "品名",
            length = "100",
            not_null = false,
            default_value = "",
            comment = "冗余字段"
    )
    private String matrName;

    @EntityFieldAnnotation(
            text = "品规",
            length = "100",
            not_null = false,
            default_value = "",
            comment = "冗余字段"
    )
    private String matrSpec;

    @EntityFieldAnnotation(
            text = "包装单位",
            length = "10",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String packageUnit;

    @EntityFieldAnnotation(
            text = "包装数量",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double packageQty;

    @EntityFieldAnnotation(
            text = "数量",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double skuQty;

    @EntityFieldAnnotation(
            text = "单价",
            length = "",
            not_null = false,
            default_value = "",
            comment = "库存单价"
    )
    private Double skuPrice;

    @EntityFieldAnnotation(
            text = "金额",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double amount;

    @EntityFieldAnnotation(
            text = "批次",
            length = "30",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String lot;

    @EntityFieldAnnotation(
            text = "效期",
            length = "",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private Date expDate;


    @EntityFieldAnnotation(
            text = "SN",
            length = "30",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String snNo;

    @EntityFieldAnnotation(
            text = "RFID",
            length = "30",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String rfid;

    @EntityFieldAnnotation(
            text = "备注",
            length = "100",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String remark;

    @EntityFieldAnnotation(
            text = "取用人",
            length = "50",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String user;

    @EntityFieldAnnotation(
            text = "取用时间",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Date useTime;

    @EntityFieldAnnotation(
            text = "耗材型号",
            length = "100",
            not_null = false,
            default_value = "",
            comment = "耗材型号"
    )
    private String matrModel;

}
